package cc.zy.base.hr.service;

import cc.zy.base.common.entity.QueryRequest;
import cc.zy.base.hr.entity.Emolument;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 院校
 * Service
 *
 * @author Jiangjinlin
 * @date 2021-01-18 10:51:13
 */
public interface IEmolumentService extends IService<Emolument> {

    /**
     * 查询（分页）
     *
     * @param request QueryRequest
     * @param college college
     * @return IPage<College>
     */
    IPage<Emolument> findEmoluments(QueryRequest request, Emolument emolument);

    /**
     * 通过ID查找院校详细信息
     *
     * @param id id
     * @return 院校信息
     */
    Emolument findEmolumentDetailList(Integer id);

    /**
     * 通过ID查找院校详细信息
     *
     * @param id id
     * @return 院校信息
     */
    Emolument findById(Integer id);

    /**
     * 查询（所有）
     *
     * @param college college
     * @return List<College>
     */
    List<Emolument> findEmoluments(Emolument emolument);

    /**
     * 新增
     *
     * @param college college
     */
    void createEmolument(Emolument emolument);

    /**
     * 修改
     *
     * @param college college
     */
    void updateEmolument(Emolument emolument);

    /**
     * 删除
     *
     * @param college college
     */
    void deleteEmolument(Emolument emolument);

    /**
     * 删除院校
     *
     * @param collegeIds 院校 id数组
     */
    void deleteEmoluments(String[] emolumentIds);

    /**
     * 查询不带分页
     */
    List<Emolument> findEmolumentListNotPage(Emolument emolument);

    /**
     * 方法描述：方法描述：查询所有院校[id、名称]
     *
     * @return java.util.List<cc.zy.base.businesses.entity.College> 院校集合
     * @author LiPeng
     * @date 2021/3/9
     */
//    List<Emolument> findCollegeForSelect();
//
//    /**
//     * 方法描述：根据院校id查询层次[id、名称]，正序
//     *
//     * @param collegeId 院校id【必传项】
//     * @return java.util.List<cc.zy.base.businesses.entity.Level> 层次集合
//     * @author LiPeng
//     * @date 2021/3/9
//     */
//    List<Level> findLevelForSelect(Integer collegeId);
//
//    /**
//     * 方法描述：根据院校id、层次id查询专业[id、名称]
//     *
//     * @param collegeId 院校id【必传项】
//     * @param levelId   层次id【必传项】
//     * @return java.util.List<cc.zy.base.businesses.entity.Major> 专业集合
//     * @author LiPeng
//     * @date 2021/3/9
//     */
//    List<Major> findMajorForSelect(Integer collegeId, Integer levelId);
//
//    /**
//     * 方法描述：获取所有有效批次[id、名称]，倒序
//     *
//     * @return java.util.List<cc.zy.base.businesses.entity.Batch> 批次集合
//     * @author LiPeng
//     * @date 2021/3/6
//     */
//    List<Batch> findBatchForSelect();
//
//    /**
//     * 方法描述：获取所有有效批次[id、名称]，倒序
//     *
//     * @return java.util.List<cc.zy.base.businesses.entity.Batch> 批次集合
//     * @author LiPeng
//     * @date 2021/3/6
//     */
//    List<Batch> selectBatchForWx();
//
//    /**
//     * 方法描述：根据学生信息获取当前学生有效批次[id、名称]，倒序
//     *
//     * @return java.util.List<cc.zy.base.businesses.entity.Batch> 批次集合
//     * @author jiangjinlin
//     * @date 2021/3/6
//     */
//    List<Batch> selectBatchByStuForWx(String studentName, String identity);
//
//    /**
//     * 方法描述：根据学生信息获取当前学生有效批次[id、名称]，倒序不包含当前登录信息
//     *
//     * @return java.util.List<cc.zy.base.businesses.entity.Batch> 批次集合
//     * @author jiangjinlin
//     * @date 2021/3/6
//     */
//    List<Batch> selectBatchByStuButThisForWx(String studentName, String identity, String batchName, String studyTypeName);
//
//    /**
//     * 查询前台输入的全称或简称是否存在
//     *
//     * @param name
//     * @param simplename
//     * @return
//     */
    Boolean isRepetitive(String name, String simplename);

//    /**
//     * 方法描述：查询所有学习形式
//     *
//     * @return java.util.List<cc.zy.base.businesses.entity.Dic> 学习形式集合
//     * @author LiPeng
//     * @date 2021/3/9
//     */
//    List<Dic> findStudyTypeForSelect();
//
//    /**
//     * 方法描述：查询校区
//     *
//     * @return java.util.List<cc.zy.base.businesses.entity.Dic> 校区集合
//     * @author LiPeng
//     * @date 2021/3/18
//     */
//    List<Dic> findCampusForSelect();
}